<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML
><HEAD
><TITLE
>Flags</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 3.6.4 
    Release"
HREF="index.html"><LINK
REL="UP"
TITLE="Administering Bugzilla"
HREF="administration.html"><LINK
REL="PREVIOUS"
TITLE="Milestones"
HREF="milestones.html"><LINK
REL="NEXT"
TITLE="Keywords"
HREF="keywords.html"></HEAD
><BODY
CLASS="section"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
SUMMARY="Header navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 3.6.4 
    Release</TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
HREF="milestones.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="80%"
ALIGN="center"
VALIGN="bottom"
>Chapter 3. Administering Bugzilla</TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
HREF="keywords.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><DIV
CLASS="section"
><H1
CLASS="section"
><A
NAME="flags-overview"
>3.8. Flags</A
></H1
><P
>&#13;     Flags are a way to attach a specific status to a bug or attachment, 
     either <SPAN
CLASS="QUOTE"
>"+"</SPAN
> or <SPAN
CLASS="QUOTE"
>"-"</SPAN
>. The meaning of these symbols depends on the text
     the flag itself, but contextually they could mean pass/fail, 
     accept/reject, approved/denied, or even a simple yes/no. If your site
     allows requestable flags, then users may set a flag to <SPAN
CLASS="QUOTE"
>"?"</SPAN
> as a 
     request to another user that they look at the bug/attachment, and set
     the flag to its correct status.
   </P
><DIV
CLASS="section"
><H2
CLASS="section"
><A
NAME="flags-simpleexample"
>3.8.1. A Simple Example</A
></H2
><P
>&#13;       A developer might want to ask their manager, 
       <SPAN
CLASS="QUOTE"
>"Should we fix this bug before we release version 2.0?"</SPAN
> 
       They might want to do this for a <EM
>lot</EM
> of bugs,
       so it would be nice to streamline the process...
     </P
><P
>&#13;       In Bugzilla, it would work this way:
       <P
></P
><OL
TYPE="1"
><LI
><P
>&#13;             The Bugzilla administrator creates a flag type called 
             <SPAN
CLASS="QUOTE"
>"blocking2.0"</SPAN
> that shows up on all bugs in 
             your product.
           </P
><P
>&#13;             It shows up on the <SPAN
CLASS="QUOTE"
>"Show Bug"</SPAN
> screen
             as the text <SPAN
CLASS="QUOTE"
>"blocking2.0"</SPAN
> with a drop-down box next
             to it. The drop-down box contains four values: an empty space,
             <SPAN
CLASS="QUOTE"
>"?"</SPAN
>, <SPAN
CLASS="QUOTE"
>"-"</SPAN
>, and <SPAN
CLASS="QUOTE"
>"+"</SPAN
>.
           </P
></LI
><LI
><P
>The developer sets the flag to <SPAN
CLASS="QUOTE"
>"?"</SPAN
>.</P
></LI
><LI
><P
>&#13;             The manager sees the <SAMP
CLASS="computeroutput"
>blocking2.0</SAMP
>
             flag with a <SPAN
CLASS="QUOTE"
>"?"</SPAN
> value.
           </P
></LI
><LI
><P
>&#13;             If the manager thinks the feature should go into the product
             before version 2.0 can be released, he sets the flag to 
             <SPAN
CLASS="QUOTE"
>"+"</SPAN
>. Otherwise, he sets it to <SPAN
CLASS="QUOTE"
>"-"</SPAN
>.
           </P
></LI
><LI
><P
>&#13;             Now, every Bugzilla user who looks at the bug knows whether or 
             not the bug needs to be fixed before release of version 2.0.
           </P
></LI
></OL
>
     </P
></DIV
><DIV
CLASS="section"
><H2
CLASS="section"
><A
NAME="flags-about"
>3.8.2. About Flags</A
></H2
><DIV
CLASS="section"
><H3
CLASS="section"
><A
NAME="flag-values"
>3.8.2.1. Values</A
></H3
><P
>&#13;         Flags can have three values:
         <P
></P
><DIV
CLASS="variablelist"
><DL
><DT
><SAMP
CLASS="computeroutput"
>?</SAMP
></DT
><DD
><P
>&#13;               A user is requesting that a status be set. (Think of it as 'A question is being asked'.)
             </P
></DD
><DT
><SAMP
CLASS="computeroutput"
>-</SAMP
></DT
><DD
><P
>&#13;               The status has been set negatively. (The question has been answered <SPAN
CLASS="QUOTE"
>"no"</SPAN
>.)
             </P
></DD
><DT
><SAMP
CLASS="computeroutput"
>+</SAMP
></DT
><DD
><P
>&#13;               The status has been set positively.
               (The question has been answered <SPAN
CLASS="QUOTE"
>"yes"</SPAN
>.)
             </P
></DD
></DL
></DIV
>
       </P
><P
>&#13;         Actually, there's a fourth value a flag can have -- 
         <SPAN
CLASS="QUOTE"
>"unset"</SPAN
> -- which shows up as a blank space. This 
         just means that nobody has expressed an opinion (or asked
         someone else to express an opinion) about this bug or attachment.
       </P
></DIV
></DIV
><DIV
CLASS="section"
><H2
CLASS="section"
><A
NAME="flag-askto"
>3.8.3. Using flag requests</A
></H2
><P
>&#13;       If a flag has been defined as 'requestable', and a user has enough privileges
       to request it (see below), the user can set the flag's status to <SPAN
CLASS="QUOTE"
>"?"</SPAN
>.
       This status indicates that someone (a.k.a. <SPAN
CLASS="QUOTE"
>"the requester"</SPAN
>) is asking
       someone else to set the flag to either <SPAN
CLASS="QUOTE"
>"+"</SPAN
> or <SPAN
CLASS="QUOTE"
>"-"</SPAN
>.
     </P
><P
>&#13;       If a flag has been defined as 'specifically requestable', 
       a text box will appear next to the flag into which the requester may
       enter a Bugzilla username. That named person (a.k.a. <SPAN
CLASS="QUOTE"
>"the requestee"</SPAN
>)
       will receive an email notifying them of the request, and pointing them
       to the bug/attachment in question.
     </P
><P
>&#13;       If a flag has <EM
>not</EM
> been defined as 'specifically requestable',
       then no such text-box will appear. A request to set this flag cannot be made of
       any specific individual, but must be asked <SPAN
CLASS="QUOTE"
>"to the wind"</SPAN
>.
       A requester may <SPAN
CLASS="QUOTE"
>"ask the wind"</SPAN
> on any flag simply by leaving the text-box blank.
     </P
></DIV
><DIV
CLASS="section"
><H2
CLASS="section"
><A
NAME="flag-types"
>3.8.4. Two Types of Flags</A
></H2
><P
>&#13;       Flags can go in two places: on an attachment, or on a bug.
     </P
><DIV
CLASS="section"
><H3
CLASS="section"
><A
NAME="flag-type-attachment"
>3.8.4.1. Attachment Flags</A
></H3
><P
>&#13;         Attachment flags are used to ask a question about a specific 
         attachment on a bug.
       </P
><P
>&#13;         Many Bugzilla installations use this to 
         request that one developer <SPAN
CLASS="QUOTE"
>"review"</SPAN
> another 
         developer's code before they check it in. They attach the code to
         a bug report, and then set a flag on that attachment called
         <SPAN
CLASS="QUOTE"
>"review"</SPAN
> to 
         <SAMP
CLASS="computeroutput"
>review?boss@domain.com</SAMP
>.
         boss@domain.com is then notified by email that
         he has to check out that attachment and approve it or deny it.
       </P
><P
>&#13;         For a Bugzilla user, attachment flags show up in three places:
         <P
></P
><OL
TYPE="1"
><LI
><P
>&#13;               On the list of attachments in the <SPAN
CLASS="QUOTE"
>"Show Bug"</SPAN
>
               screen, you can see the current state of any flags that
               have been set to ?, +, or -. You can see who asked about 
               the flag (the requester), and who is being asked (the 
               requestee).
             </P
></LI
><LI
><P
>&#13;              When you <SPAN
CLASS="QUOTE"
>"Edit"</SPAN
> an attachment, you can 
              see any settable flag, along with any flags that have 
              already been set. This <SPAN
CLASS="QUOTE"
>"Edit Attachment"</SPAN
> 
              screen is where you set flags to ?, -, +, or unset them.
             </P
></LI
><LI
><P
>&#13;               Requests are listed in the <SPAN
CLASS="QUOTE"
>"Request Queue"</SPAN
>, which
               is accessible from the <SPAN
CLASS="QUOTE"
>"My Requests"</SPAN
> link (if you are
               logged in) or <SPAN
CLASS="QUOTE"
>"Requests"</SPAN
> link (if you are logged out)
               visible in the footer of all pages.
             </P
></LI
></OL
>
       </P
></DIV
><DIV
CLASS="section"
><H3
CLASS="section"
><A
NAME="flag-type-bug"
>3.8.4.2. Bug Flags</A
></H3
><P
>&#13;         Bug flags are used to set a status on the bug itself. You can 
         see Bug Flags in the <SPAN
CLASS="QUOTE"
>"Show Bug"</SPAN
> and <SPAN
CLASS="QUOTE"
>"Requests"</SPAN
>
         screens, as described above.
       </P
><P
>&#13;         Only users with enough privileges (see below) may set flags on bugs.
         This doesn't necessarily include the assignee, reporter, or users with the
         <SAMP
CLASS="computeroutput"
>editbugs</SAMP
> permission.
       </P
></DIV
></DIV
><DIV
CLASS="section"
><H2
CLASS="section"
><A
NAME="flags-admin"
>3.8.5. Administering Flags</A
></H2
><P
>&#13;       If you have the <SPAN
CLASS="QUOTE"
>"editcomponents"</SPAN
> permission, you can
       edit Flag Types from the main administration page. Clicking the
       <SPAN
CLASS="QUOTE"
>"Flags"</SPAN
> link will bring you to the <SPAN
CLASS="QUOTE"
>"Administer
       Flag Types"</SPAN
> page. Here, you can select whether you want 
       to create (or edit) a Bug flag, or an Attachment flag.
     </P
><P
>&#13;       No matter which you choose, the interface is the same, so we'll 
       just go over it once.
     </P
><DIV
CLASS="section"
><H3
CLASS="section"
><A
NAME="flags-edit"
>3.8.5.1. Editing a Flag</A
></H3
><P
>&#13;         To edit a flag's properties, just click the flag's name.
         That will take you to the same
         form as described below (<A
HREF="flags-overview.html#flags-create"
>Section 3.8.5.2</A
>).
       </P
></DIV
><DIV
CLASS="section"
><H3
CLASS="section"
><A
NAME="flags-create"
>3.8.5.2. Creating a Flag</A
></H3
><P
>&#13;          When you click on the <SPAN
CLASS="QUOTE"
>"Create a Flag Type for..."</SPAN
>
          link, you will be presented with a form. Here is what the fields in 
          the form mean:
        </P
><DIV
CLASS="section"
><H4
CLASS="section"
><A
NAME="flags-create-field-name"
>3.8.5.2.1. Name</A
></H4
><P
>&#13;            This is the name of the flag. This will be displayed 
            to Bugzilla users who are looking at or setting the flag. 
            The name may contain any valid Unicode characters except commas
            and spaces.
          </P
></DIV
><DIV
CLASS="section"
><H4
CLASS="section"
><A
NAME="flags-create-field-description"
>3.8.5.2.2. Description</A
></H4
><P
>&#13;            The description describes the flag in more detail. It is visible
            in a tooltip when hovering over a flag either in the <SPAN
CLASS="QUOTE"
>"Show Bug"</SPAN
>
            or <SPAN
CLASS="QUOTE"
>"Edit Attachment"</SPAN
> pages. This field can be as
            long as you like, and can contain any character you want.
          </P
></DIV
><DIV
CLASS="section"
><H4
CLASS="section"
><A
NAME="flags-create-field-category"
>3.8.5.2.3. Category</A
></H4
><P
>&#13;            Default behaviour for a newly-created flag is to appear on
            products and all components, which is why <SPAN
CLASS="QUOTE"
>"__Any__:__Any__"</SPAN
>
            is already entered in the <SPAN
CLASS="QUOTE"
>"Inclusions"</SPAN
> box.
            If this is not your desired behaviour, you must either set some
            exclusions (for products on which you don't want the flag to appear),
            or you must remove <SPAN
CLASS="QUOTE"
>"__Any__:__Any__"</SPAN
> from the Inclusions box
            and define products/components specifically for this flag.
          </P
><P
>&#13;            To create an Inclusion, select a Product from the top drop-down box.
            You may also select a specific component from the bottom drop-down box.
            (Setting <SPAN
CLASS="QUOTE"
>"__Any__"</SPAN
> for Product translates to, 
            <SPAN
CLASS="QUOTE"
>"all the products in this Bugzilla"</SPAN
>.
            Selecting  <SPAN
CLASS="QUOTE"
>"__Any__"</SPAN
> in the Component field means
            <SPAN
CLASS="QUOTE"
>"all components in the selected product."</SPAN
>) 
            Selections made, press <SPAN
CLASS="QUOTE"
>"Include"</SPAN
>, and your
            Product/Component pairing will show up in the <SPAN
CLASS="QUOTE"
>"Inclusions"</SPAN
> box on the right.
          </P
><P
>&#13;            To create an Exclusion, the process is the same; select a Product from the
            top drop-down box, select a specific component if you want one, and press
            <SPAN
CLASS="QUOTE"
>"Exclude"</SPAN
>. The Product/Component pairing will show up in the 
            <SPAN
CLASS="QUOTE"
>"Exclusions"</SPAN
> box on the right.
          </P
><P
>&#13;            This flag <EM
>will</EM
> and <EM
>can</EM
> be set for any
            products/components that appearing in the <SPAN
CLASS="QUOTE"
>"Inclusions"</SPAN
> box 
            (or which fall under the appropriate <SPAN
CLASS="QUOTE"
>"__Any__"</SPAN
>). 
            This flag <EM
>will not</EM
> appear (and therefore cannot be set) on
            any products appearing in the <SPAN
CLASS="QUOTE"
>"Exclusions"</SPAN
> box.
            <EM
> IMPORTANT: Exclusions override inclusions.</EM
>
          </P
><P
>&#13;            You may select a Product without selecting a specific Component,
            but you can't select a Component without a Product, or to select a
            Component that does not belong to the named Product. If you do so,
            Bugzilla will display an error message, even if all your products
            have a component by that name.
          </P
><P
><EM
>Example:</EM
> Let's say you have a product called 
            <SPAN
CLASS="QUOTE"
>"Jet Plane"</SPAN
> that has thousands of components. You want
            to be able to ask if a problem should be fixed in the next model of 
            plane you release. We'll call the flag <SPAN
CLASS="QUOTE"
>"fixInNext"</SPAN
>.
            But, there's one component in <SPAN
CLASS="QUOTE"
>"Jet Plane,"</SPAN
> 
            called <SPAN
CLASS="QUOTE"
>"Pilot."</SPAN
> It doesn't make sense to release a 
            new pilot, so you don't want to have the flag show up in that component.
            So, you include <SPAN
CLASS="QUOTE"
>"Jet Plane:__Any__"</SPAN
> and you exclude 
            <SPAN
CLASS="QUOTE"
>"Jet Plane:Pilot"</SPAN
>.
          </P
></DIV
><DIV
CLASS="section"
><H4
CLASS="section"
><A
NAME="flags-create-field-sortkey"
>3.8.5.2.4. Sort Key</A
></H4
><P
>&#13;            Flags normally show up in alphabetical order. If you want them to 
            show up in a different order, you can use this key set the order on each flag. 
            Flags with a lower sort key will appear before flags with a higher
            sort key. Flags that have the same sort key will be sorted alphabetically,
            but they will still be after flags with a lower sort key, and before flags
            with a higher sort key.
          </P
><P
>&#13;            <EM
>Example:</EM
> I have AFlag (Sort Key 100), BFlag (Sort Key 10), 
            CFlag (Sort Key 10), and DFlag (Sort Key 1). These show up in
            the order: DFlag, BFlag, CFlag, AFlag.
          </P
></DIV
><DIV
CLASS="section"
><H4
CLASS="section"
><A
NAME="flags-create-field-active"
>3.8.5.2.5. Active</A
></H4
><P
>&#13;            Sometimes, you might want to keep old flag information in the 
            Bugzilla database, but stop users from setting any new flags of this type.
            To do this, uncheck <SPAN
CLASS="QUOTE"
>"active"</SPAN
>. Deactivated
            flags will still show up in the UI if they are ?, +, or -, but they
            may only be cleared (unset), and cannot be changed to a new value.
            Once a deactivated flag is cleared, it will completely disappear from a 
            bug/attachment, and cannot be set again.
          </P
></DIV
><DIV
CLASS="section"
><H4
CLASS="section"
><A
NAME="flags-create-field-requestable"
>3.8.5.2.6. Requestable</A
></H4
><P
>&#13;            New flags are, by default, <SPAN
CLASS="QUOTE"
>"requestable"</SPAN
>, meaning that they
            offer users the <SPAN
CLASS="QUOTE"
>"?"</SPAN
> option, as well as <SPAN
CLASS="QUOTE"
>"+"</SPAN
>
            and <SPAN
CLASS="QUOTE"
>"-"</SPAN
>.
            To remove the ? option, uncheck <SPAN
CLASS="QUOTE"
>"requestable"</SPAN
>.
          </P
></DIV
><DIV
CLASS="section"
><H4
CLASS="section"
><A
NAME="flags-create-field-specific"
>3.8.5.2.7. Specifically Requestable</A
></H4
><P
>&#13;            By default this box is checked for new flags, meaning that users may make
            flag requests of specific individuals. Unchecking this box will remove the
            text box next to a flag; if it is still requestable, then requests may
            only be made <SPAN
CLASS="QUOTE"
>"to the wind."</SPAN
> Removing this after specific
            requests have been made will not remove those requests; that data will
            stay in the database (though it will no longer appear to the user).
          </P
></DIV
><DIV
CLASS="section"
><H4
CLASS="section"
><A
NAME="flags-create-field-multiplicable"
>3.8.5.2.8. Multiplicable</A
></H4
><P
>&#13;            Any flag with <SPAN
CLASS="QUOTE"
>"Multiplicable"</SPAN
> set (default for new flags is 'on')
            may be set more than once. After being set once, an unset flag
            of the same type will appear below it with <SPAN
CLASS="QUOTE"
>"addl."</SPAN
> (short for 
            <SPAN
CLASS="QUOTE"
>"additional"</SPAN
>) before the name. There is no limit to the number of
            times a Multiplicable flags may be set on the same bug/attachment.
          </P
></DIV
><DIV
CLASS="section"
><H4
CLASS="section"
><A
NAME="flags-create-field-cclist"
>3.8.5.2.9. CC List</A
></H4
><P
>&#13;            If you want certain users to be notified every time this flag is 
            set to ?, -, +, or unset, add them here. This is a comma-separated 
            list of email addresses that need not be restricted to Bugzilla usernames.
          </P
></DIV
><DIV
CLASS="section"
><H4
CLASS="section"
><A
NAME="flags-create-grant-group"
>3.8.5.2.10. Grant Group</A
></H4
><P
>&#13;            When this field is set to some given group, only users in the group
            can set the flag to <SPAN
CLASS="QUOTE"
>"+"</SPAN
> and <SPAN
CLASS="QUOTE"
>"-"</SPAN
>. This
            field does not affect who can request or cancel the flag. For that,
            see the <SPAN
CLASS="QUOTE"
>"Request Group"</SPAN
> field below. If this field
            is left blank, all users can set or delete this flag. This field is
            useful for restricting which users can approve or reject requests.
          </P
></DIV
><DIV
CLASS="section"
><H4
CLASS="section"
><A
NAME="flags-create-request-group"
>3.8.5.2.11. Request Group</A
></H4
><P
>&#13;            When this field is set to some given group, only users in the group
            can request or cancel this flag. Note that this field has no effect
            if the <SPAN
CLASS="QUOTE"
>"grant group"</SPAN
> field is empty. You can set the
            value of this field to a different group, but both fields have to be
            set to a group for this field to have an effect.
          </P
></DIV
></DIV
><DIV
CLASS="section"
><H3
CLASS="section"
><A
NAME="flags-delete"
>3.8.5.3. Deleting a Flag</A
></H3
><P
>&#13;          When you are at the <SPAN
CLASS="QUOTE"
>"Administer Flag Types"</SPAN
> screen,
          you will be presented with a list of Bug flags and a list of Attachment
          Flags.
        </P
><P
>&#13;          To delete a flag, click on the <SPAN
CLASS="QUOTE"
>"Delete"</SPAN
> link next to
          the flag description.
        </P
><DIV
CLASS="warning"
><P
></P
><TABLE
CLASS="warning"
WIDTH="100%"
BORDER="0"
><TR
><TD
WIDTH="25"
ALIGN="CENTER"
VALIGN="TOP"
><IMG
SRC="../images/warning.gif"
HSPACE="5"
ALT="Warning"></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
>&#13;            Once you delete a flag, it is <EM
>gone</EM
> from
            your Bugzilla. All the data for that flag will be deleted.
            Everywhere that flag was set, it will disappear,
            and you cannot get that data back. If you want to keep flag data,
            but don't want anybody to set any new flags or change current flags,
            unset <SPAN
CLASS="QUOTE"
>"active"</SPAN
> in the flag Edit form.
          </P
></TD
></TR
></TABLE
></DIV
></DIV
></DIV
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
SUMMARY="Footer navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="milestones.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="index.html"
ACCESSKEY="H"
>Home</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="keywords.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>Milestones</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="administration.html"
ACCESSKEY="U"
>Up</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>Keywords</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>